package day10;

import java.util.Scanner;

import sort.MergeSort;

/**
 * Tom和Jerry在玩一个取宝石的游戏，游戏开始前，他们将n（1<=n<=1000）个盘子摆在一条线上，每个盘子里均放有一定数量的宝石，之后
 * Tom和Jerry轮流取宝石，取宝石的规则如下：每次取宝石者必须选中一个盘子，然后从盘中取走至少1颗宝石，之后将该盘子中剩下的宝
 * 石以任意分配方式分配到其他的盘子中，也可以不向外分配。如此轮流进行下去，直到某一方再也不能取宝石时，对方获胜。现在Jerry
 * 率先取宝石。假设Tom和Jerry同样聪明，在给定盘子中宝石数量序列的情况下，Jerry能否获胜呢？
 * @author chenxiaokang
 *
 */
public class Ques1207 {
	
	public void mergeSort(int[] arr,int n){
		this.mergeSort(arr,0,n-1);
	}
	
	private void mergeSort(int[] arr,int l,int r){
		
		if(l >= r)return;
		
//		if( l - r <= 15){
//			insertionSort(arr,l,r);
//			return;
//		}
		
		int mid = (l + r)/2;
		this.mergeSort(arr,l,mid);
		this.mergeSort(arr,mid+1,r);
		if(arr[mid] > arr[mid + 1])
			this.merge(arr,l,mid,r);
	}
	
	private void merge(int[] arr,int l,int mid,int r){
		int[] temp = new int[r - l + 1];
		for(int i = l;i <= r; i++){
			temp[i - l] = arr[i];
		}
		
		int i = l,j = mid + 1;
		
		for(int k = l;k <=r;k ++){
			if(i > mid){
				arr[k] = temp[j - l];
				j++;
			}else if(j > r){
				arr[k] = temp[i - l];
				i++;
			}else if(temp[i - l] < temp[j -l]){
				arr[k] = temp[i-l];
				i ++;
			}else{
				arr[k] = temp[j - l];
				j ++;
			}
		}
	}
	
	int[] array = new int[10000];
	
	public void go(){
		Scanner scan = new Scanner(System.in);
		while(scan.hasNext()){
			int n = scan.nextInt();
			if(n == 0){
				return;
			}
			for(int i = 0;i < n;i ++){
				array[i] = scan.nextInt();
			}
			if(n % 2 != 0){
				System.out.println("YES");
			}else{
				new Ques1207().mergeSort(array, n);
				for(int i = 1;i < n;i ++){
					if(array[i] != array[i - 1]){
						System.out.println("Yes");
					}
					break;
				}
				System.out.println("No");
			}
		}
	}
	
	public static void main(String[] args) {
		new Ques1207().go();
	}
}
